草庐IT

Swift 枚举评估

全部标签

javascript - 有没有办法在 Javascript 中拥有/锁定枚举对象的唯一索引值?

这个问题在这里已经有了答案:HowcanIguaranteethatmyenumsdefinitiondoesn'tchangeinJavaScript?(50个答案)关闭6年前。阅读"recommendedway"处理ENUMType在Javascript中,我仍然不确定,因为我可以将该值与伪造值进行比较,而我应该只与“枚举”类型的值进行比较:varDaysEnum={"monday":1,"tuesday":2,"wednesday":3,...}Object.freeze(DaysEnum)switch(day){case"monday":return"Hello"case"tu

javascript - 为什么 {} == false 评估为 false 而 [] == false 评估为 true?

为什么{}==false评估为false而[]==false评估为true在javascript中? 最佳答案 这是根据AbstractEqualityComparisonAlgorithm发生的类型转换:{}==false//step7{}==ToNumber(false){}==0//step9ToPrimitve({})==0"[objectObject]"==0//step5ToNumber("[objectObject]")==0NaN==0//step1.c.i[]==false//step7[]==ToNumber(f

枚举中的 Javascript 枚举

我在javascript中有以下“枚举”来指示我的应用程序的状态:varState={STATE_A:0,STATE_B:1,STATE_C:2//...}现在,我希望每个状态都有一个“子状态”。因此,例如,STATE_B可能位于STATE_B1或STATE_B2...构建此结构的最佳方式是什么?我会以某种方式在State“enum”中嵌套一个“enum”吗?谢谢如果有更好的方法来完全构建它(除了枚举),我会洗耳恭听。基本上我需要能够设置和检查我的应用程序的状态,并且每个状态都可以(但不是必需的)有一个子状态附加到它可以设置和检查。如果解决方案允许我深入嵌套一层以上,那就更好了。

运算符的 Javascript 评估顺序

在所有浏览器(尤其是IE6+、F3+、Opera9+、Chrome)中,以下哪个表达式始终位于从左到右的前面?例如,窗口应该始终提示firstfunction然后是secondfunction。在C中,他们总是建议不要依赖于表达式求值的顺序。JavaScript也是一样还是运算符优先级一致?functionfirst(){alert('firstfunction');return0;}functionsecond(){alert('secondfunction');return23;}first()+second();first()-second();first()*second();

javascript - Angular2,从组件内的字符串评估模板

可以从变量中的字符串评估模板吗?我需要将字符串而不是表达式放在组件中,例如template:"{{template_string}}"template_string包含:{{name}}并且所有的都应该评估为MyName但我看到{{template_string}}我需要像{{template_string|eval}}这样的东西或其他东西来评估当前上下文中变量的内容。这可能吗?我需要一些东西来使用这种方法,因为template_string可以在使用组件时更改。Edit1:Angular版本:4.0.3例如@Component({selector:'product-item',tem

javascript defineProperty 使属性不可枚举

我正在尝试使用defineProperty使属性不出现在for...in循环中,但它不起作用。这个代码正确吗?functionItem(){this.enumerable="enum";this.nonEnum="noEnum";}Object.defineProperty(Item,"nonEnum",{enumerable:false});vartest=newItem();for(vartmpintest){console.log(tmp);} 最佳答案 Item没有名为nonEnum(checkitout)的属性。它是一个(

javascript - 'undefined' 不是在 Safari 中评估 el.click() 的函数

我想在按下Enter按钮时运行一个js函数。在IE、Chrome和Opera中一切正常,但在Safari中出现错误(如下所述)。我需要一个纯Javascript解决方案,不是jQuery。这是函数:functionpressSearch(e){if(typeofe=='undefined'&&window.event){e=window.event;}varcharCode=(e.which)?e.which:((e.charCode)?e.charCode:((e.keyCode)?e.keyCode:0));if(charCode==13){document.getElementB

javascript - 将枚举转换为值数组(将所有 JSON 值放入数组中)

我用这个方法EnumsinJavaScript?在我们的代码中创建枚举..所以vartypes={"WHITE":0,"BLACK":1}现在的问题是,当我想在任何地方创建验证时,我必须这样做;model.validate("typesColumn",[types.WHITE,types.BLACK]);现在有没有一种方法可以将类型中的值简单地转换为数组,这样我就不必列出枚举的所有值?model.validate("typesColumn",types.ValuesInArray]);编辑:我创建了一个非常简单的枚举库来生成简单的枚举npm--save-devinstallsimple

javascript - Undefined 不是评估 this.state 的对象。*

我在使用fetch将数据发布到快速RESTAPI时遇到问题在我的native应用程序中。这是我的代码:/***SampleReactNativeApp*https://github.com/facebook/react-native*@flow*/importReact,{Component}from'react';import{AppRegistry,StyleSheet,Text,View}from'react-native';importButtonfrom'react-native-button';importDeviceInfofrom'react-native-device

javascript - 为什么在外部范围内定义时阴影变量会评估为未定义?

考虑以下代码:varoutside_scope="outsidescope";functionf1(){alert(outside_scope);}f1();此代码的输出是警告框显示消息“outside范围”。但是,如果我将代码稍微修改为:varoutside_scope="outsidescope";functionf1(){alert(outside_scope);varoutside_scope="insidescope";}f1();警告框显示消息“未定义”。我本可以有如果在两种情况下都显示“未定义”,则可以理解逻辑。但是,那个没有发生。它仅在第二种情况下显示“未定义”。这是为